package com.jie.netty.type;

import lombok.AllArgsConstructor;

@AllArgsConstructor
public enum IMCmdType {

    /**
     * 登陆
     */
    LOGIN(0, "登陆"),
    /**
     * 心跳
     */
    HEART_BEAT(1, "心跳"),
    /**
     * 强制下线
     */
    FORCE_LOGUT(2, "强制下线"),
    /**
     * 私聊消息
     */
    PRIVATE_MESSAGE(3, "私聊消息"),

    /**
     * 通知消息
     */
    NOTIFY_MESSAGE(5, "公告消息"),
    /**
     * 点赞消息
     */
    LIKE_MESSAGE(6, "点赞消息"),
    /**
     * 评论消息
     */
    COMMENT_MESSAGE(7, "评论消息"),
    /**
     * 群发消息
     */
    GROUP_MESSAGE(4, "群发消息"),
    /**
     * 组队成功消息
     */
    TEAM_SUCCESS_MESSAGE(8, "组队成功消息"),
    /**
     * 组队轨迹消息
     */
    TEAM_TRACE_MESSAGE(9, "组队轨迹消息"),
    /**
     * 组队下线消息
     */
    TEAM_OFFLINE_MESSAGE(10, "组队下线消息");


    private final Integer code;

    private final String desc;


    public static IMCmdType fromCode(Integer code) {
        for (IMCmdType typeEnum : values()) {
            if (typeEnum.code.equals(code)) {
                return typeEnum;
            }
        }
        return null;
    }


    public Integer code() {
        return this.code;
    }


}

